Code Implementation

Problem 1

Default.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" ViewStateEncryptionMode="Always"%>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Counter</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:Label id="lblCount" runat="server" Text="Counter: 0" />
            <input type="button" id="increment" runat="server" onserverclick="Increment_Click" value="Increment" />
        </div>
    </form>
</body>
</html>

Default.aspx.vb


Partial Public Class _Default
    Inherits System.Web.UI.Page
    Protected Sub Increment_Click(ByVal sender As Object, ByVal e As EventArgs) Handles increment.serverclick

        Dim Counter As Integer
        If ViewState("Counter") Is Nothing Then
            Counter = 1
        Else
            Counter = CType(ViewState("Counter"), Integer) + 1
        End If
        ViewState("Counter") = Counter
        lblCount.Text = "Counter: " & Counter.ToString()
    End Sub
End Class

Problem 3

Default2.aspx


<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default_2.aspx.vb" Inherits="_Default_2" %>

<!DOCTYPE html>
<html xmlns = "http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Customer ViewState Example</title>
</head>
<body>
    <form id = "form1" runat="server">
        <div>
            <ASP:Button ID = "btnRetrieve" runat="server" Text="Retrieve Customers" OnClick="btnRetrieve_Click" />
        </div>
    </form>
</body>
</html>

Default2.aspx.vb


Partial Class _Default_2
    Inherits System.Web.UI.Page

    
    Public Class Customer

        Private _firstName As String
        Public Property FirstName() As String
            Get
                Return _firstName
            End Get
            Set(ByVal value As String)
                _firstName = value
            End Set
        End Property

        Private _lastName As String
        Public Property LastName() As String
            Get
                Return _lastName
            End Get
            Set(ByVal value As String)
                _lastName = value
            End Set
        End Property

        Public Sub New(ByVal firstName As String, ByVal lastName As String)
            Me.FirstName = firstName
            Me.LastName = lastName
        End Sub

    End Class

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            Dim customers As New List(Of Customer) From {
                New Customer("Ali ", "Raza"),
                New Customer("Haider", "Khan"),
                New Customer("Mohsin", "Khan")
            }
            ViewState("Customers") = customers
        End If
    End Sub

    Protected Sub btnRetrieve_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnRetrieve.Click
        Response.Clear()
        Dim customers As List(Of Customer) = CType(ViewState("Customers"), List(Of Customer))
        If customers IsNot Nothing Then
            For Each customer As Customer In customers
                Response.Write("First Name: " & customer.FirstName & ", Last Name: " & customer.LastName & "
") Next End If End Sub End Class
Web hosting by Somee.com